<!DOCTYPE html>
<html lang="en">
<head>
    <meta  http-equiv="content-type" content="text/html" charset="utf-8"/>
    <meta charset="UTF-8">
    <title>Title</title>
    <!-- 加上defer属性：（代码已经加载进来了，延迟执行）。执行时机：当页面都加载完毕之后-->
    <script type="text/javascript" charset="UTF-8" src="test.js" defer="defer"></script>
    <script type="text/javascript">

        function test(a,b){
            return a+b;
        }
        alert(typeof test);//特别注意：函数也是一种数据类型,因此函数可以当做参数传递给别的函数
    /***********************************/
        function aa(){
            alert('执行啦');
        }
        function test2(aa){
            aa();
        }
        test2(aa);

        test2(function(){alert('我也执行啦');});//匿名函数的用法

        //函数嵌套定义：尽量不要去这样定义
        function test3(){

            function test4(){
                alert('我是test4');
            }
            test4();
        }

    </script>
</head>
<body>

</body>
</html>